﻿<?xml version="1.0" encoding="utf-8" ?>

<lz:project xmlns:lz="http://schemas.icitadel.com/Lazarus/Source.xsd"
	name="Lazarus" namespace="OR.Lazarus.Library" owner="dbo" user="jmuharsky" businessconcept="CPP.Logical" namespaceprefix="lzn" namespaceuri="http://schemas.icitadel.com/Lazarus/CPP/Logical.xsd">
   <lz:description>Defines a terse definition of an object graph.  Objects may be interrelated, and support properties, methods and events.</lz:description>
   
   <lz:defaults>
      <lz:fields>
         <lz:field name="Id" type="Varchar" size="255" required="true">
            <lz:indexes>
               <lz:index type="Primary" />
            </lz:indexes>
         </lz:field>
         <lz:field name="Description" alias="description" type="Text" />
      </lz:fields>
   </lz:defaults>
   
   <lz:objects>
      
      <lz:object name="Project">
         <lz:description>Describes a set of interrelated objects.</lz:description>
         <lz:collections>
            <lz:collection name="Classes" object="Class" />
         </lz:collections>
      </lz:object>

      <lz:object name="Class" title-field="Id">
         <lz:description>Defines a class (object) within a project.  Objects may have properties, methods and events.</lz:description>
         <lz:fields>
            <lz:field name="Name" type="Varchar" size="255" required="true" />
         </lz:fields>
         <lz:collections>
            <lz:collection name="Properties" object="Property" />
            <lz:collection name="Methods" object="Method" />
            <lz:collection name="Events" object="Event" />
         </lz:collections>
      </lz:object>
      
   </lz:objects>
</lz:project>